package com.ruoyi.medical.service.impl;

import java.util.Date;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.medical.mapper.ConsultOrderMapper;
import com.ruoyi.medical.domain.ConsultOrder;
import com.ruoyi.medical.service.IConsultOrderService;
import org.springframework.transaction.annotation.Transactional;

/**
 * 咨询管理Service业务层处理
 * 
 * @author WGH
 * @date 2025-08-13
 */
@Service
public class ConsultOrderServiceImpl implements IConsultOrderService 
{
    @Autowired
    private ConsultOrderMapper consultOrderMapper;


    /**
     * 查询咨询管理
     * 
     * @param id 咨询管理主键
     * @return 咨询管理
     */
    @Override
    public ConsultOrder selectConsultOrderById(Long id)
    {
        return consultOrderMapper.selectConsultOrderById(id);
    }

    /**
     * 查询咨询管理列表
     * 
     * @param consultOrder 咨询管理
     * @return 咨询管理
     */
    @Override
    public List<ConsultOrder> selectConsultOrderList(ConsultOrder consultOrder)
    {
        return consultOrderMapper.selectConsultOrderList(consultOrder);
    }

    /**
     * 新增咨询管理
     * 
     * @param consultOrder 咨询管理
     * @return 结果
     */
    @Override
    public int insertConsultOrder(ConsultOrder consultOrder)
    {
        consultOrder.setOrderNo("ORD" + System.currentTimeMillis() + (int)(Math.random()*1000));
        consultOrder.setStatus(0); // 待支付
        consultOrder.setExpireTime(new Date(System.currentTimeMillis() + 15*60*1000)); // 15分钟
        consultOrder.setDel(0);
        int i = consultOrderMapper.insertConsultOrder(consultOrder);
        return i;
    }

    /**
     * 修改咨询管理
     * 
     * @param consultOrder 咨询管理
     * @return 结果
     */
    @Override
    public int updateConsultOrder(ConsultOrder consultOrder)
    {
        return consultOrderMapper.updateConsultOrder(consultOrder);
    }

    /**
     * 批量删除咨询管理
     * 
     * @param ids 需要删除的咨询管理主键
     * @return 结果
     */
    @Override
    public int deleteConsultOrderByIds(Long[] ids)
    {
        return consultOrderMapper.deleteConsultOrderByIds(ids);
    }

    /**
     * 删除咨询管理信息
     * 
     * @param id 咨询管理主键
     * @return 结果
     */
    @Override
    public int deleteConsultOrderById(Long id)
    {
        return consultOrderMapper.deleteConsultOrderById(id);
    }
}
